Method and apparatus for rapidly estimating the doppler-error and other receiver frequency errors of global positioning system satellite signals weakened by obstructions in the signal path

ABSTRACT

Frequency-offset components are extracted from a set of digitized samples of signals transmitted by a satellite. The samples are squared to produce squared samples and decimated. The squared samples are auto-correlated to produce an auto-correlate, and the auto-correlate is truncated. The truncated auto-correlate is transformed into the frequency domain to obtain double-frequency offset components. The scaled offset frequencies are used to compensate for Döppler-shift and receiver frequency errors and for Döppler induced time errors in digitized samples used to estimate pseudorange information.

This application is a continuation of U.S. application Ser. No.09/645,152, filed Aug. 24, 2000 now U.S. Pat. 6,331,836, by Louis H. M.Jandrell and entitled “A Method and Apparatus for Rapidly Estimating theDoppler-Error and Other Receiver Frequency Errors of Global PositioningSystem Satellite Signals Weakened by Obstructions in the Signal Path.”

FIELD OF THE INVENTION

The invention relates to determining the geolocation of wirelessdevices. Specifically, the invention relates to rapidly and autonomouslyestimating Doppler-shift and other receiver frequency errors in aranging-receiver when receiving GPS satellite signals, including signalsweakened by obstructions in the signal path.

BACKGROUND OF THE INVENTION

In the application of GPS technology to the geolocation of portablewireless devices, it is desirable, because of the limited battery poweravailable in such wireless devices, that the geolocation function: (i)operates with minimum energy consumption; and (ii) completes ageolocating fix in a minimum time.

At or near the surface of the earth, the signal level of GPS satellitesis less than the thermal noise level of the conventional GPS receiversdue to: (i) the spread spectrum modulation of the signal; (ii) theheight of the 12 hour-period orbit (approximately 11,000 miles) of theGPS satellites; and (iii) the limited transmitting power of thesatellite. Conventional GPS receivers must use sophisticated signalprocessing techniques, such as code correlation techniques, to extractthe satellite signals.

Furthermore, wireless devices are typically operated in situations whereviews of the sky, and hence direct line-of-sight with GPS satellites,are frequently obstructed, resulting in further reduction of the levelsof the received signals. Consequently, the obstructed signal levels fromthe GPS satellites are well below the threshold at which conventionalGPS receivers can receive reliable position-tracking signals, andcertainly below the level where any receiving equipment can receivereliable GPS satellite ephemeris data.

In order to recover these relatively weak satellite signals, the signalsmust be synchronously de-spread using convolution or correlationtechniques. In conventional autonomous GPS receivers with unobstructedsignals, this is done by searching for the signals with trialfrequencies (since the Döppler-shifis are unknown) and with trial CourseAcquisition Codes (C/AC), also referred to as the satellite's “GoldCodes”, (since the satellite identities are also unknown). Since theunobstructed signals have relatively good signal-to-noise ratios, asmall sample of the signal is sufficient for the correlation searchstep, and Doppler-shift frequency trial steps can be quite large, so thesearch proceeds quickly, especially when multiple channels are searchedsimultaneously (rough estimate of search space of about 3000frequency/code “boxes” of 5 milliseconds/box=15 seconds). However, whenthe signals are further weakened, typically by obstructions in thesignal path, then many more samples are required (perhaps hundreds tothousands of times more) than are needed for the unobstructed case, andthe Döppler-shift search frequency step must be much smaller because ofthe longer correlation samples. The search may then take a very muchlonger time (rough estimate of search space of about 300,000frequency/code “boxes” of 1 second=a few days). What is needed is afaster and more direct method than the above correlation and frequencystepping search approach.

However, because of the repetitive nature of certain aspects of the GPSsatellite signals, it is possible to use techniques such as verynarrow-band filtering or signal averaging. In narrowband filtering it ispossible to use the Fast Fourier Transform (“FFT”) to process longsegments of the signal, thereby creating large numbers of narrow“frequency-bins”. For example, since “bin” width is inverselyproportional to segment length, for a segment length of 1 (one) second,the bin width would be 1 Hz and for a signal bandwidth of 2 MHz, theresulting number of bins would 2 (two) million. The energy of the noisepresent in the bin-bandwidth is approximately evenly spread across allthe “frequency bins”. However, the signal energy only falls in a verysmall number of the bin, thereby making it possible to be better detectthe signal against this lowered noise background. In signal averaging,segments of the signal that repeats exactly are coherently added to eachother to improve the relationship between the desired signal and thenoise.

Both of these processes trade time for signal-to-noise ratio (e.g.,either coherent signal energy accumulation or longer signals, enablingnarrower analysis bandwidth), to improve the repetitive aspect of thesignals against the random noise present in the signals. Both of theseprocesses are possible due to the presence of the aforesaid repetitiveproperties in the satellite signals, such as the pseudo random rangingcode, which repeats exactly every code cycle, or the carrier, whichrepeats continuously except for modulation changes. When such repetitivesignal samples are added coherently, they accumulate linearly (i.e.,proportionally to the number of samples). On the other hand, the randomnoise present in the signals is not coherent, and (in the coherentsummation of the repetitive aspect above) accumulates as the square rootof the number of samples. For example, with one thousand samples, therepetitive signal would be a thousand times larger, while the noisecomponent would be only approximately thirty times larger.

Therefore, by utilizing specialized algorithms, it is possible toaccumulate and process enough of the satellite's signals to obtainreliable tracking information. Tracking information includesDöppler-error, tracking measurement time, pseudorange and satelliteidentification data. All of the tracking information must be obtainedsimultaneously for each satellite in view of the ranging-receiver.Furthermore, if the tracking information, which includes an accurateestimate of the time that the tracking information was measured, istransmitted (via the wireless link) to a remote site or to a wirelessdevice, where current ephemeris data has been obtained by conventionalGPS receiving equipment operating with a clear view of the sky, then,when processed with the current ephemeris data, an accurate geolocationof the wireless device can be computed.

For the purposes of this application, the term “Döppler-error” isdefined as the combination of Döppler-shift and frequency errors in thereceiver due to local oscillator instability, aging, thermal effects andmanufacturing tolerances. “Döppler-shift” is the frequency shift createdby the relative motion between the satellite transmitter and the rangingreceiver in the device to be located. Furthermore, frequency-offset orfrequency-offsets or offset-frequency or offset-frequencies may be usedas appropriate in the following descriptions synonymously withDöppler-error or Döppler-errors, unless specifically modified byalternative adjectives.

Because this signal-averaging process is much longer in duration thanprocesses used by conventional GPS receivers (estimated to be hundredsto thousands of times longer), there is potential for significantimprovements in signal detection sensitivity. However, to accumulate thesatellite's tracking signal efficiently over such longer intervals, itis necessary to precisely compensate for: (i) the Döppler-shift inducederrors (both time and frequency errors) in the signals by the relativemotion between the receiver and the satellites broadcasting the signals;and (ii) frequency errors in the receiver's timing source due to factorssuch as thermal effects, manufacturing tolerances and component aging.

The term “ranging-receiver” is used herein to distinguish between: (i)the partial-function nature of a “ranging-receiver”, which is onlycapable of identifying the GPS satellites and measuring pseudorange; and(ii) the full-function nature of a conventional, autonomous GPSreceiver, which is capable of identifying the GPS satellites, measuringpseudorange, receiving and decoding GPS satellite ephemeris data, andmaking a geolocation estimate.

One attempted method for providing Döppler-shift information to aranging-receiver operates on the presumption that a special “referenceGPS receiver” nearby the ranging-receiver would be able to accuratelyestimate and relay to the ranging-receiver the Döppler-shift and timinginformation for each satellite in order to provide the necessaryDöppler-shift correction information, and resolve the 1 millisecond timeambiguity between ranging pulses. Such a “reference GPS receiver” would:(i) measure the Döppler-shift and identity of all satellites in view atthe remote location of the wireless device from a point also having asimilar view of the satellites; and (ii) relay both the satelliteidentifications (“satellite IDs”) and Döppler-shifts and, of necessity,time-base standardizing information, via the wireless link to the GPSrangingreceiver. It is also necessary to keep track of the clock timefor each satellite-in-view to allow resolution of the one-millisecondambiguity. However, this method creates several difficulties andcomplexities.

For example, in order to cover a wide area, either: (i) a large numberof such reference GPS receivers is needed, each such receiver providingcoverage for a local radius of approximately a hundred miles (limited bythe 1 millisecond ambiguity or approximately half the speed of lightmultiplied by the 1 millisecond interval between ranging pulses); or(ii) an information server must be provided, capable of interpolatingthe Döppler-shift information from a smaller number of referencereceivers to values applicable to the location nearby to theranging-receiver of the wireless device.

Furthermore, because Döppler is different at different points ofmeasurement, the Döppler-shift uncertainty between two stationaryranging-receivers a hundred miles apart would be different by as much as50 Hz, which may further limit the efficiency of the signal averagingprocess necessary to recover the tracking information from the weakenedsignals. These “reference GPS receivers” are specialized GPS receiverscapable of very precisely measuring and reporting the Döppler-shift ofthe satellite signals against a “standardized” time-base with aprecision suitable for longer integration times, and capable of keepingtrack of the clock time for each satellite-in-view to resolve the timingambiguity required for calculating the rangingreceiver's geolocation.The ranging-receiver can then use the reference-receiver's Döppler-shiftinformation to compensate for ranging signals errors introduced by theDöppler-shift before it begins estimating the pseudorange measurement.

However, in order to estimate which reference GPS receiver is “nearbyenough” to the wireless device to send it sufficiently accurateDöppler-shift information, the system sending the Döppler-shiftinformation must have a “crude” estimate (i.e., within approximately onehundred miles) of the location of the wireless device. This may bedifficult in some cases and near impossible in others, and certainlyrestricts the use of the method to systems that already have significantintegration into the wireless network infrastructure (e.g., the wirelessdevice must be sufficiently integrated in to the wireless network toreport the location of the cell-site that is handling the wireless linkwith the wireless device).

Furthermore, the measurement of frequency implies the use of an agreedstandard for the unit of time at the point of measurement and the pointof use. This is almost always a difficult implication to deal with whenhigh accuracy is required, since “common time” must be transferred fromthe point of measurement to the point of application or vice versa withthe necessary precision and accuracy.

So, even when sufficiently accurate Döppler-shift information is sent tothe wireless device, the sampling time-base in the wireless device mustalso be synchronized (i.e., calibrated or re-scaled) with the “standardtime-base” used to obtain the Döppler-shift information, or else the useof the Döppler-shift information will be distorted by the relativeerrors between the two time-bases (i.e., the “standard time-base” of thereference GPS receiver and the time-base of the wireless device'sranging-receiver). This time-base calibration or synchronization (ortimescaling) normally requires “tight” integration of the samplingtime-base (in the wireless device) with the time-base of the wirelesscarrier system, and/or with the time-base of the reference GPSmonitoring system, to maintain the required level of accuracy andprecision.

What is proposed by the applicant is a unique approach that will quicklyand autonomously obtain precise Döppler-error correction and analternate method of providing resolution of the timing ambiguity thatdoes not rely on either: (i) tightly integrating with the carrier'snetwork; or (ii) a support network (or equivalent) of nearby referenceGPS receivers to enable the ranging-receiver to provide sufficienttracking information for its geolocation to be calculated.

SUMMARY OF THE INVENTION

The present invention teaches a method whereby both the Döppler-errorand the respective satellite's identification can quickly (therebyminimizing the power consumption required for determining a geolocation)and precisely be determined at the wireless device, using only thesignal sampling time-base in the ranging-receiver, and in circumstanceswhere the signal's strength has been weakened by obstructions in thesignal path, thus making it possible for the wireless device toautonomously and quickly (i.e., in a matter of seconds) obtain reliabletracking information without satellite ID and Döppler-shift informationassistance from a remote site.

The invention allows the wireless device, when connected with itscarrier network, to transmit the estimated pseudorange, the time-of-day(“TOD”) of the pseudorange measurement, satellite ID and Döppler-errorinformation for each of the satellite signals being received(collectively the “tracking information”) from any unknown location andanytime after making the ranging measurement (i.e. not limited to firstknowing the location of points “nearby” the wireless device and notrequiring any high precision synchronization with any particularnetwork's timing system). The pseudorange, the TOD of the pseudorangemeasurement and the satellite HD information can be processed with theephemeris data (collectively the “geolocating data”) of all the GPSsatellites (which can be obtained, if necessary, by any set ofconventional GPS receivers able to obtain GPS data from all satellites,located anywhere in the world) to compute the location of the wirelessdevice. The Döppler-shift information allows the pseudorange ambiguityto be resolved by Döppler navigation means.

The only relative timing information required between the wirelessdevice and the facility processing the pseudorange and satellite IDinformation into a geolocation, is the TOD at which the pseudorange datawas measured. Depending on the specific application, most commercialapplications require only modest time resolution between one to tenmilliseconds.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the present inventions are described withreference to the following drawings, wherein:

FIG. 1 is a block diagram illustrating a preferred embodiment of theessential components of the system for locating the wireless device bythe method of the present invention;

FIG. 2A is a block diagram illustrating a GPS geolocating accessory inaccordance with a preferred embodiment of the present invention, suchGPS geolocating accessory embodying a ranging-receiver and itsinteraction with a wireless device, in this case, by way of example, atypical digital cellular telephone;

FIG. 2B is a block diagram illustrating the GPS ranging-receiverfunction in accordance with a preferred embodiment of the presentinvention, such GPS ranging receiver function being integrated with awireless device, in this case, by way of example, a typical digitalcellular telephone;

FIG. 3 is a flowchart for the operation of the geolocating accessory;

FIG. 4 is a flowchart of the Döppler-error extraction process inaccordance with a preferred embodiment of the present invention; and

FIG. 5 is a flowchart of the processes for Döppler-error compensation,satellite identification and the pseudorange estimation from thesatellite signal sample.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Each GPS satellite transmits a unique signal that consists of a 1575.42MHz sinusoidal carrier signal biphase, modulated by two pseudo randombiphase signals. The biphase signals include: (i) the unique CourseAcquisition Code (“C/AC”) of the satellite, referred to herein as the“Gold Code” of the satellite, with the 1.023 MHz “chipping” rate,resulting in the spreading of the majority of the signal's energy overapproximately 2.046 MHz; and (ii) in quadrature, a Precision PositioningCode (“PPC”) at a 10.23 MHz chipping rate, spreading the resultingmodulation over 20.46 MHz. For the purpose of this application, the PPCwill be ignored. Further, the basic C/AC sequence-length is 1023 chips,resulting in a repeat of the Gold Code sequence exactly everymillisecond. Satellite message data is modulated on this basic scheme byinverting the modulation code sequence phase according to the messagedata at a message data rate of 20 bits per second. Thus, the codesequence repeats at least 20 times before it may change due to data−bitchanges.

Referring now to FIG. 1, a block diagram of a remote geolocation systemis shown. GPS satellites 116 and 117 are coupled to a geolocatingaccessory 101 b. The geolocating accessory 1 101 b is connected to awireless device 101 c. The wireless device 101 c is coupled via awireless link to a radio tower 102.

Radio tower 102 is coupled to tower equipment 103. Tower equipment 103is coupled to wireless network management equipment 106. The wirelessnetwork management equipment 106 is coupled to Plain Old TelephoneSystem (POTS) 107. The POTS 107 is coupled to application sites, suchas, by way of example only, a vehicle dispatch site 119 or a PublicSafety Access Point (PSAP) 118.

The PSAP 118 comprises a modem 108, which is connected to the POTS 107.The modem 108 is coupled to a telephone 110 and a workstation 109. Theworkstation 109 is also coupled to a receiver 114. The receiver 114 isalso coupled to the GPS satellites 116 and 117.

The vehicle dispatch site 119 comprises a modem 120, which is connectedto the POTS 107. The modem 120 is also coupled to a telephone 122, and aworkstation 121. The workstation 121 is also coupled to a receiver 123.The receiver 123 is coupled to the GPS satellites 116 and 117 (couplingnot shown in Figure).

The GPS satellites 116 and 117 are GPS satellites capable oftransmitting GPS signals. The wireless device 101 c may be any type ofwireless device capable of wireless communication and transferringtiming information (TOD) to the ranging-receiver. For example, it may bea cellular telephone, wireless Personal Digital Assistant, two-way orresponse pager, private or commercial vehicle tracking system, “On-Star”type motorist service network, or a private or commercial wireless datanetwork (or a device in these networks). Other types of wireless devicesare possible.

The wireless device 101 c may be coupled to the geolocating accessory101 b (containing a GPS ranging-receiver), as described below inreference to FIG. 2a. The geolocating accessory 101 b may be attached tothe wireless device 101 c by a dongle cable 101 d. Alternatively, thegeolocating accessory 101 b may be attached to the body of the wirelessdevice 101 c as a “stickon” attachment or built into a receptacle,thereby making the electrical contact with the wireless device when itis inserted into the receptacle. Alternatively, the geolocatingranging-receiver's functionality may be integrated into the wirelessdevice design 101 c (described in reference to FIG. 2b).

The radio tower 102 is any type of tower having antennas, which arecapable of transmitting and receiving wireless communication signals.For example, they may be standard cellular towers having cellularcommunication antennas. The tower equipment 103 contains functionality,such as transceivers, which receive and send transmissions from theradio tower 102.

The wireless network management equipment 106 includes processes, whichroute communications to and from the tower equipment 103. In addition,the wireless network management equipment 106 provides connectivity tothe POTS 107.

The PSAP 118 manages emergency services. Within the PSAP, receiver 114receives signals from the GPS satellites 116 and 117. The receiver 114processes the signals, for example, for ephemeris data, from the GPSsatellites 116 and 117. The workstation 109 is used by operators tomonitor emergency calls. The workstation 109 also determines thelocation of the wireless device 101 c based on information exchangedwith the geolocating accessory 101 b via the wireless device 101 c. Thetelephone 110 allows the operator to call the wireless device Me orrespond to the incoming call when called. The modem 108 is a modemcapable of interacting with the POTS 107 and the geolocating accessory101 b. The modem 108 provides a data exchange capability andtime-exchange facility with the geolocating accessory 101 b via thewireless device 101 c over the same voice channel as used by the callerto speak to the PSAP operator.

The vehicle dispatch site 119 manages vehicle-dispatching services.Within the vehicle dispatch site 119, receiver 123 receives signals fromthe GPS satellites 116 and 117. The receiver 123 processes the signals,for example, for ephemeris data, from the GPS satellites 116 and 117.The workstation 121 is used by operators to monitor communications withwireless devices. The workstation 121 also determines the location ofthe wireless device 101 c based on information exchanged with thegeolocating accessory 101 b. The telephone 122 allows an operator tocall the wireless device 101 c. The modem 120 is a modem capable ofinteracting with the POTS 107 and the geolocating accessory 101 b. Themodem 120 provides data exchange capability and a time-exchange facilitywith the geolocating accessory 101 b via the wireless device 101 c overthe same voice channel as used by the caller to speak to the operator ofthe workstation 121.

An activity requiring a geolocating fix or sometimes referred to as a“position fix” can be initiated at either end of the wireless link(e.g., at the wireless device 101 c or at the vehicle dispatch site 119or PSAP 118). For example, a user of the wireless device 101 c mayinitiate a call to the PSAP 118 to obtain emergency assistance at thelocation of the wireless device 101 c. Alternatively, the application atthe vehicle dispatch site 119 or an operator at the PSAP 118 mayinitiate a call to the wireless device 101 c to determine the currentlocation of the wireless device.

If the activity is initiated at the wireless device 101 c, the caller atthe wireless device 101 c dials the telephone number of the PSAP 118,such as “911”. The PSAP operator answers the call with the telephone 110and the PSAP operator then instructs the user to depress a “LOCATE”button 101 a on the geolocating accessory 101 b to begin the geolocatingprocess. In an alternate embodiment, the caller at the wireless devicedials the number of the vehicle dispatch site 119. In yet anotherembodiment, the application (e.g., the application from the vehicledispatch site 119) initiates a call to the wireless device, which may beset up to automatically answer the call and initiate the geolocatingprocess in the geolocating accessory 101 b.

The workstation 109, using current ephemeris data continuously receivedfrom a conventional GPS receiver 114, which has a clear view of the GPSsatellites, computes the location of the caller, enabling the PSAPoperator to dispatch help to the caller.

If activity is initiated at the PSAP 118 or the vehicle dispatch site119, the dispatcher at the PSAP 118 or the vehicle dispatch site 119initiates a call via modem 108 or 120 to the wireless device 101 c. Theuser at the wireless device 101 c answers the call, and activates thegeolocating accessory 101 b starting a geolocating function in theranging-receiver, which estimates the geolocating data from thesatellite signals. The wireless device 101 c may also automaticallyanswer the call and initiate the locating process in the geolocatingaccessory 101 b.

In determining the tracking information, the geolocating accessory 101 bdigitizes the GPS satellite signals presently being received by thegeolocating accessory 101 b. Next, the geolocating accessory 101 bprocesses the digitized signals to obtain a set of satellite IDinformation, Döppler-error and pseudorange data. Via an exchange oftiming signals with the vehicle dispatch site 119 or PSAP 118 over theaudible channel of the wireless device 101 c, the geolocating accessory101 b determines the TOD at which the measurement was made. Next, thegeolocating accessory 101 b sends this data, via the same audiblechannel of the wireless device 101 c (the same channel as that which theverbal conversation takes place,) to the workstation 121 via the modem120 or the workstation 109 via the modem 108.

The workstation 109 or 121, using current ephemeris data continuouslyreceived from a conventional GPS receiver 114 or 123, each of which hasa clear view of the GPS satellites, computes the location of the caller,enabling the PSAP operator or the operator of the workstation 121 todispatch help or take appropriate action. The workstation 109 or 121 maydisplay the location on a dispatch map, thereby assisting the dispatcheror operator to take appropriate action.

Referring now to FIG. 2a, a block diagram of a geolocating accessory 200connected to a wireless device 250 is shown. In this case, a digitalcellular telephone is used by way of example.

The GPS satellites 273 and 274 are coupled to a GPS antenna 202. The GPSantenna 202 is coupled to a filter and low noise amplifier 203. Thefilter and low noise amplifier 203 is coupled to a RF/IF down converter204. The RF/IF down converter 204 is coupled to an analogto-digitalconverter 206. The analog-to-digital converter 206 is coupled to asignal sample memory 208. The signal sample memory 208 is coupled to adigital signal processor (DSP) 210. A local oscillator 205 is coupled tothe RF/IF down converter 204 and the analog-to-digital converter 206.

The DSP 210 is coupled to a push button 216, auto answer switch 218,program (ROM) and working (RAM) memories 212, accessory batteries 214,and a modem function 219. The DSP 210 also has a control line 221, whichis coupled to the wireless device 250 at a connector 240. The modemfunction 219 has control lines 220, which are coupled to the wirelessdevice 250 at the connector 240. The wireless device 250 is coupled to abase station 290 via a wireless link 260.

The GPS satellites 273 and 274 are GPS satellites capable oftransmitting GPS signals. The wireless device 250 may be any type ofwireless device capable of wireless communication. For example, it maybe a cellular telephone, wireless Personal Digital Assistant, two-way orresponse pager, private or commercial vehicle tracking system, “On-Star”type motorist service network, or a private or commercial wireless datanetwork (or a device in these networks). Other types of wireless devicesare possible.

The GPS antenna 202 is any antenna capable of receiving GPS signals, forexample a circularly polarized ceramic patch antenna. The filter and lownoise amplifier 203 is a combination of a filter and a low-noiseamplifier. In one example, the filter and low noise amplifier 203 limitssignals bandwidth to approximately 2 MHz (centered at 1575.42 MHz). Thesignal is down-converted to baseband by the RF/IF down convertor 204.The analog-to-digital converter 206 is any type of device that digitizesanalog signals received from the RF/IF down converter 204. For example,the analog-to-digital converter 206 may digitize the signals at aminimum of 2 megasamples per second, but more typically 4 megasamplesper second or 8 megasamples per second to improve timing resolution, andthen further into 1 bit or 2 bit, inphase and quadrature-phase (I/Q)samples.

The DSP 210 is a processor capable of processing stored instructions.For example, the DSP 210 may be a Motorola DSP 56654 manufactured byMotorola, Inc. of Schaumburg, Ill. or a Texas Instrument TMS 320VCSS10manufactured by Texas Instruments of Dallas, Tex. Other examples arepossible.

The program and working memories 212 is a combination of ROM and RAMmemories. However, other types of memory and other combinations arepossible.

The local oscillator 205 is any type of oscillator used to drive digitaldevices. For example, the local oscillator 205 may be a temperaturecompensated crystal oscillator (TCXO) or digitally compensated crystaloscillator (DCXO). Other oscillator types are possible.

The signal sample memory 208 is any type of memory used to temporarilystore digital signal samples. For example, it may be a RAM memory.However, other memory types are possible. The modem function 219provides an interface whereby communications are transmitted between theDSP 210 and the wireless device 250. The accessory batteries 214 providepower to the geolocating accessory 200.

In operation, the geolocating accessory 200 may be activated either bysignals arriving via the wireless link (if the auto-answer switch isenabled) or, alternatively, by pressing the push button 216. In eithercase, the DSP is activated.

The GPS signals are received from the GPS satellites 273 and 274 arecombined at the GPS antenna 202. The combined signal is band-limited bythe filter and low noise amplifier 203. Next, the signal issuperhetrodyned in the RF/IF down converter 204. Specifically, thefiltered signal is down-converted to an offset IF frequency by the RF/IFdown converter 204 using the heterodyning frequency provided by thelocal oscillator 205. The RF signal, now near baseband, is thendigitized by the analog-to-digital converter 206.

After being digitized, the samples may be stored in the signal samplememory 208 for processing. This processing includes extraction of theDöppler-error. For example, the IF signal may be sampled at a rate of atleast 2.024 Ms/s by the analog-to-digital converter 206 which may storethe digital samples in the signal sample memory 208 or begin decimationprocessing. This sample rate ensures at least 2 I/Q samples per pseudorandom noise (PRN) code chip, which PRN code modulates at 1.023 MHz.While the samples are being processed in the signal sample memory 208,the DSP 210 performs a timing handshake with the geolocating workstationto establish an accurate TOD for the time of pseudorange measurement.

Intermediate results of the processing may be stored in the program andworking memories 212. The DSP 210, operating on instructions containedin the program (ROM) and working (RAM) memories 212, processes thesamples to obtain the GPS signal earner frequencies including theDöppler-errors, compensates for the Döppler-errors and for Döpplerinduced time errors, obtains the pseudorange and satellite ID for eachsatellite found, communicates the tracking information through the modemfunction 219 and the control lines 220, coupled to the wireless device250, which then communicates via the wireless link 260 to the basestation 290. The DSP 210 manages the power consumption from theaccessory batteries 214 during this process and returns the wirelessdevice to “standby” operation when the geolocating operation iscomplete.

The geolocating accessory 200 communicates with the wireless device 250via the “hands free” audio signal lines 220 and “hook control” line 221.The signal lines are coupled to connector 240. The wireless device 250communicates with the base station 290 and transmits the trackinginformation such that the geolocation will be calculated.

Referring now to FIG. 2b, a GPS ranging-receiver integrated into awireless device 290 is illustrated. In this case, a digital cellulartelephone is used by way of example.

The GPS satellites 273 and 274 are coupled to a GPS antenna 252. Theantenna is coupled to a filter and low noise amplifier 254. The filterand low noise amplifier 254 is coupled to a receiver mode switch 256.The receiver mode switch 256 is coupled to an RF/IF down converter 258.The RF/IF down converter 258 is coupled to an analog-to-digitalconverter 262. The analog-to-digital converter 262 is coupled to asignal sample memory 264. The signal sample memory 264 is coupled to adigital signal processor (DSP) 266.

The DSP 266 is coupled to program and working memories 268, a speaker270, a microphone 272, and cellular transmission circuitry 276. Thefrequency and timing generator 260 is coupled to the RF/IF downconverter 258, the analog-to-digital converter 262 and the cellulartransmission circuitry 276. The cellular transmission circuitry 276 iscoupled to the T/R diplexer 280. The T/R diplexer 280 is coupled to acommunication antenna 282 and a cellular receive band filter 278. Thecellular receive band filter 278 is coupled to the receive mode switch256. A base station 288 is coupled to the antenna 286.

The GPS satellites 273 and 274 are GPS satellites capable oftransmitting GPS signals. The wireless device 290 may be any type ofwireless device capable of wireless communication and transferringtiming information (TOD) to the ranging-receiver. For example, it may bea cellular telephone, Personal Digital Assistant, two-way or responsepager, private or commercial vehicle tracking system, “On-Star” typemotorist service network, or private and commercial wireless datanetworks (and devices in these networks). Other types of wirelessdevices are possible.

The GPS antenna 252 is any antenna capable of receiving GPS signals, forexample a circularly polarized ceramic patch antenna. The filter and lownoise amplifier 254 is a combination of a filter and a low-noiseamplifier. In one example, the filter and low noise amplifier 254 limitssignals to approximately 2 MHz. The analog-to-digital converter 262 isany type of device that digitizes analog signals received from thefilter and low-noise amplifier. For example, the analog-to-digitalconverter 262 may digitize the signals at a minimum of 2 megasamples persecond.

The DSP 266 is a processor capable of processing stored instructions.For example, the DSP 266 may be a Motorola DSP 56654 manufactured byMotorola, Inc. of Schaumburg, Ill. or a Texas Instrument TMS 320VCSS10manufactured by Texas Instruments of Dallas, Tex. Other examples arepossible.

The program and working memories 268 is a combination of ROM and RAMmemories. However, other types of memory and other combinations arepossible.

The frequency and timing generator 260 is any type of oscillator used todrive digital devices. For example, the frequency and timing generator260 may be a TCXO or DCXO. Other types of frequency and timing devicesare possible.

The signal sample memory 264 is any type of memory used to temporarilystore signal samples. For example, it may be a RAM memory. However,other memory types are possible.

The cellular transmission circuitry 276 converts the voice informationreceived from the DSP 266 and formats it into wireless signals fortransmission through the T/R diplexer 280 and communication antenna 282.The cellular receiver mode switch 256 switches either GPS or cellularsignal into the rest of the receiver. The cellular receive band filter278 only accepts incoming signals in the cellular receive frequencyband. The T/R Diplexer 280 isolates the transmitter output signals fromthe cellular receiver and allows a single communication antenna (i.e.,the communication antenna 282) to serve both the transmit and receivefunctions.

The wireless device 290 operates in one of two modes: a phone mode or aGPS mode. The mode is selected by the DSP 266, by setting the receivermode switch to the appropriate position.

When in phone mode, the wireless device 290 receives the wirelesssignals from the communication antenna 282. The received signals arepassed by the T/R diplexer 280, and accepted by the cellular receiveband filter 278. Then, the signals are passed through the receiver modeswitch 256 (set in the “phone” position), down-converted (bysuperhetrodyning) in the RF/IF down converter 258 with the localoscillator (LO) frequency supplied by the frequency and timing generator260. Then, the received signals are converted to digital signal samplesvia the analog-to-digital converter 262. The samples are then processedthrough the signal sample memory 264 into voice and control signals bythe DSP 266 according to instructions retrieved from the program andworking memories 268 to create sound from the speaker 270.

Sound signals from the microphone 272 are converted to digital signalsand suitable modulation under the control of the DSP 266 and transmittedvia the cellular transmission circuitry 276 through the T/R diplexer 280and the communication antenna 282.

When the receiver mode switch 256 is in the “GPS” position, thereceiving side of the equipment can process the GPS signals beingreceived by the circularly polarized GPS antenna 252.

When the DSP 266 detects a triggering request either in the message/datastream flowing through the digital demodulator, typically implemented inthe DSP 266, or via a depression of the LOCATE push button or acombination of push buttons (not shown in FIG. 2b), it first performs atiming-handshake with the base station 288, (or obtains time from thenetwork, if available), and then starts processing samples through thesignal sample memory 264. This differs from what can occur when usingthe geolocating accessory 200, since the accumulation/processing ofsamples in the geolocating accessory 200 can take place at the same timeas the timing-handshake is taking place. Other activation mechanisms,both manual and automatic, are possible.

Once the timing-handshake has been completed, the DSP 266 turns power onto the GPS antenna 252 and to the filter and low noise amplifier 254.Then, the DSP 266 switches the receiver mode switch 256 to pass the GPSsignals, and changes the frequency and timing generator 260 to providethe heterodyning frequency for the GPS signal. Next, the DSP 266 beginsto accumulate/process GPS signal samples through the signal samplememory 264. The DSP 266 also begins to count time, so that at a laterstage in the process, it can relate the time that the sample was beingtaken, to the TOD established by the handshake process.

The GPS Antenna 252 receives the combined signals from all GPSsatellites “in-view”. The filter and low noise amplifier 254 selects theparticular 2 MHz bandwidth occupied by the C/AC modulated GPS signals.The filtered signal is converted to IF frequencies by the RF/IF downconverter 258 using the heterodyning LO frequency provided by thefrequency and timing generator 260. Next, the IF signal is sampled bythe analog-to-digital converter 262 at a sampling rate; for example, ata rate of at least 2.048 MS/s or higher multiples thereof. Theanalog-to-digital converter 262 may store the digital samples in thesignal sample memory 264, or begin processing immediately. The DSP 266,operating on instructions contained in the program and working memories268, and when not busy collecting GPS signal samples, processes thesamples to obtain the Döppler-errors from the GPS signals, compensatesfor the time and frequency-offsets, obtains the pseudorange andsatellite ID for each satellite found, and communicates the trackinginformation via the wireless link 284 to the remote geolocatingworkstation.

The DSP 266 also manages the device power requirements, the switchingbetween GPS and two-way signals as needed during this process andreturns the cellular telephone to “cellular” operation when the rangingoperation is complete.

Since the DSP 266 in this case may have access to network timinginformation, TOD information may be obtained either by completing atiming handshake via the wireless link, or by obtaining it from thenetwork timing data stream.

After processing the samples in memory for all Döppler-error, satelliteID and pseudorange data, the results are sent via the wireless networklink to the remote site where the geolocation of the wireless device 290is computed.

Referring now to FIG. 3, a flow diagram of the operation of thegeolocating accessory is described. The process begins when an eventtrigger at step 301 enables the ranging-receiver, causing power to beturned on to the necessary circuitry at step 302. The processinitializes at step 303 by clearing any prior data from the digitizedsample memory. Simultaneously, at step 304, the timing-handshakeoperation is performed to determine the TOD.

The timing handshake consists of the ranging-receiver noting the localtime-of-day, LTOD (the time-of-day according to the local clock in theranging-receiver), and sending a timing tone signal to the remotegeolocating workstation, which measures the time of its arrival by astandard TOD clock (a clock accurately synchronized with either astandard clock, such as that at the National Bureau of Standards inColorado, or timing derived from signals transmitted by the GPSsatellites). After a standard delay, the geolocating workstationtransmits a responding timing tone signal to the ranging-receiver, whichalso measures its time of arrival by its local TOD clock. Immediatelyfollowing the timing tone, the remote geolocating workstation sends tothe ranging-receiver the standard TOD at which the timing tone wasreceived by the geolocating workstation and the duration of the standarddelay.

On the presumptions that the timing tone transmission delays are thesame in both directions, and that they are stationary (i.e., invariantwith time), then, from these respective TOD measurements, theranging-receiver computes the calibrated Local TOD as:

CL _(TOD) =S _(TOD)−½(R _(TOD) −T _(TOD) −SD)

where: CL_(TOD) is the Calibrated Local Time-Of-Day;

S_(TOD) is the Standard Time-Of-Day;

R_(TOD) is the Un-calibrated Received Time-Of-Day;

T_(TOD) is the Un-calibrated Transmitted Time-Of-Day; and

SD is the Standard Delay.

Given that these measurements are made on signals with goodsignal-to-noise ratios in the voice/audio channel signals, it is easy tomake all of these TOD measurements with a resolution of better than onemillisecond.

If either of the presumptions above is not true (i.e., the delays arenot stationary or that the delays are not the same in both directions),then the best that can be achieved with multiple two-way timingmeasurements is an accuracy of one half of the long-term bias.

Next, at step 305, in the case of the geolocating accessory, the GPSsignal samples from the analog-to-digital converter are captured.

The carriers are extracted at 306 (detailed in relation to FIG. 4 below)and tested at 311. If too few carriers are found at 311, additionaldigital samples are added to the analysis ensemble at 305, and thisprocess continues till adequate carriers are found at 311.

Once the adequate carrier components have been extracted from the noise,they are rescaled at step 313 into the actual signal carriers. Theactual Döppler-error frequency results can be used to compensate forfrequency and time errors in either new samples or saved samples in thesignal sample memory (since the Döppler-error compensation informationwill change little within the few seconds of the analysis processes,then the trade-off between new/old samples may be chosen on a basis ofmemory economics). The compensation results can then be used in theprocesses to determine both the satellite IDs and pseudorange, forexample, by signal averaging and Fourier transform correlation processesat step 314. Once the pseudoranges and satellite IDs are known, they aretransmitted at step 315 to the remote geolocating workstation, alongwith the found Döppler-errors and CLTOD measurement information, so thatthe actual geolocation of the receiver can be calculated. Once theresults have been transmitted, the geolocating accessory power is cycleddown to standby power at step 316.

Referring now to FIG. 4, the Döppler-error extraction process isdescribed. The process to get Döppler-errors begins at 401. Next, atstep 402, any previous signal samples are cleared from the signal samplememory (memory pointer set to the beginning). Then, at step 403, newsamples are obtained from the analog-to-digital converter (theanalog-to-digital converter 206 in FIG. 2a or the RF/IF down converter258 in FIG. 2b). The new samples are squared at step 404 to remove thebiphase ranging code modulation.

The signal samples are squared to remove the biphase pseudo random noise(PRN) code modulation on the GPS signal carriers.

The squaring removes the biphase modulation as follows. Consider thecase of three satellite signals. If x, y, and z represent the biphasePRN Gold Code modulation for three different satellites' signals, and a,b and c are the carrier frequencies of the respective signals beingreceived by the GPS receiver, then:

x Cos[a]+y Cos[b]+z Cos[c]

is representative of the received signal. On squaring the signal, theresult is in the form:

½(x ² +y ² +z ² +x ² Cos[2 a]+y ² Cos[2 b]+z ² Cos[2 c]+2xy(Cos[a+b]+Cos[a−b])+2xz (Cos[a+c]+Cos[a−c])+2yz (Cos[b+c]+Cos[b−c]))

i.e. a “DC” (zero frequency) term x²+y²+z²

a double frequency set x² Cos[2 a]+y² Cos[2 b]+z² Cos[2 c]

and an intermodulation set 2xy (Cos[a+b]+Cos[a−b])+2xz(Cos[a+c]+Cos[a−c])+2yz (Cos[b+c]+Cos[b−c])

It will be noticed that the double frequency set has its modulationcollapsed, since x² or y² or z² is either (+1)2 or (−1)², which ineither case is equal to +1. Meanwhile, the intermodulation set is still“spread”, but now by the product of two different Gold Codes (e.g., xyor xz or yz).

Therefore from the above discussion we can see that squaring the signaldoes “collapse” the biphase modulation in the case of the doublefrequency terms, but mixes the intermodulation signals into many (N²−N)“doubly-spread” sum and difference frequencies.

At step 405, the squared samples are then decimated in a narrowbandwidth filtering process resulting in an improvement insignal-to-noise ratio; and a reduction in the number of samples to befrequency analyzed for carrier components by Fourier transform methods.The decimation filter is used: (i) to reduce the bandwidth of thesamples from the sampled 2.048 MHz to the bandwidth of the Döppler-shiftplus local oscillator frequency uncertainty bandwidth (typically lessthan 10 KHz); and (ii) to reduce the number of samples to be used in theanalysis for frequency components. The decimation typically results inan immediate signal-to-noise ratio improvement of about 20 db, and a100:1 contraction of the size of the sample to be Fourier transformed.This decimation filtering, well known in the art, can be accomplished ina number of ways, for example, by weighting and summing approximatelyone hundred “input” samples (depending on decimation filter design) intoa single “output” result, then doing the same weighting and summing on asubsequent batch of the same number of samples, and so on through theset of samples, or by means of Cascades Integrator Comb filters, whichdo not require the multiplication steps. Other methods are possible.

At step 406, these squared and decimated samples are concatenated withany prior squared and decimated samples (none, when the process isstarted anew).

The frequency analysis begins at step 407 where the current decimatedsample set is autocorrelated to emphasize the sinusoidal carriers, andto concentrate much of the noise energy of the auto-correlate in theon-time (the “zero-time-shift”) component of the auto-correlationresult. The zero-time-shift component is removed (“truncated”) at 408(removing significant noise energy from the auto-correlation), and thenthe truncated auto-correlation result is again Fourier transformed toobtain the frequency components of the truncated auto-correlation atstep 409. The resulting frequency spectrum is then searched at step 410for potential carrier components significantly above the noisebackground. If there are too few or no candidate components, or if thecandidates are only marginally above the noise background at step 411,then the process begins to add more samples to the analysis (therebyreducing the bandwidth of the analysis and of the now longer time-seriesof digitized samples) by looping back from steps 411 to 403 to add newsamples from the signal sample memory, or, in another embodiment, fromthe analog-to-digital converter. If sufficient carrier componentcandidates are found at step 411, then the double-frequency componentsare rescaled (measured frequency is divided by 2 to account for thedoubling in frequency produced by the squaring step) to give thefrequency to be used for: (i) the Döppler-errors correction prior to thecorrelation processes used to determine both pseudorange and satelliteID; and, (ii) the Döppler-induced time error correction after the firstFourier transform performed during the correlation process, inpreparation for signal averaging, if used. At step 414, a set ofDöppler-error values to be used for corrections exists.

Referring now to FIG. 5, the Döppler-error compensation, satelliteidentification and pseudorange determination process is now described.In one embodiment, a table contains the complex-conjugates of theFourier transforms of the Gold Codes, sampled at the same rate as thedigitized signal samples. Each of the complex-conjugates of the Fouriertransform of a Gold Code is represented by an F[N] (a vector in the “Ftable”), where N is some index value (e.g., the Gold Code number in therange of 1 to 32 and equal to the satellite ID number) and is stored inpermanent memory.

At step 501, either the digitized signal samples being collected, orthose samples already in the signal sample memory, are compensated forthe Döppler-errors by frequency shifting in the time domain by thefrequencies determined from the Döppler-error extraction process above.A set of frequency compensated digitized samples is created for eachDöppler-error value, by multiplying each complex digitized sample by acomplex “despinning vector” equal to:

F(n)=e ^(−j2πTf) ^(_(d))

where: f_(d) is the current Döppler-error frequency (e.g., somewherebetween −10 kHz and +10 kHz as found);

T is the decimated sampling period (e.g. a hundred milliseconds); and

n is the sample number variable.

In one embodiment, multiple Gold Code segment length sequences of theseDöppler-error compensated samples are stacked for the purpose of signalaveraging. The number of such Gold Code length that can be effectivelystacked is limited by the 50 bit/second ephemeris data modulated on thephase of the Gold Code sequences to less than 20 (typically between 4and 10).

At step 502 the Döppler-error compensated sample sets (which may bestacked or not stacked) are Fourier transformed as a prelude to theDöppler-induced time error compensation and correlation processes. Atstep 503, the Döppler-induced time error samples are compensated bymultiplying the Fourier transform components by a complex exponentialfactor to shift the time in the frequency domain.

The exponential factor is:

T(n)=e ^(−j2πnd/Tf) ^(_(d))

where:

d is the current Döppler-error induced time-shift error per analysisframe;

T_(f) is the analysis interval, e.g. 1 millisec per code frame; and

n is the frequency step variable.

The exponential factor may be recovered from the pre-computed table orcomputed at the time it is applied. At step 504, the Döppler-errorscompensated samples are multiplied by the Fourier transform of thecandidate satellite's Gold Code, stored in F[n]. This result is inverseFourier transformed at step 505 to give the time series of thecorrelation of the Döppler-error compensated satellite signal samplesand the candidate satellite's Gold Code. These results may also bestacked to improve the signal-to-noise ratio.

If, at step 506, pseudoranging pulses are not found in this result, thenexecution continues at step 512 to explore further trial Gold Codes;else the pseudorange is associated with the satellite ID implied by thespecific trial Gold Code in step 508.

If at step 512 all Gold Codes have been tested, then execution loopsback to 516, where the next frequency-offset factor and correspondingtime offset factor are selected, and execution continues at 501, elsethe process loops back to 514 to explore the next Gold Code from theF[n] table by selecting a new code from the F table and continuing theprocess at step 504.

At step 508, the satellite can be identified since the candidate code atF[n], which implies a particular satellite, has matched the satellitecode and yielded pseudoranging pulses.

If, at step 509, all Döppler-errors have not been processed, thencontrol loops back to step 516, where the next Döppler-error time andfrequency-offset factors are selected and processing continues at step501 to explore further Satellite IDs, as implied by the nextDöppler-error frequency, else the pseudoranging and satellite ID processis complete at 510.

It should be understood that the programs, processes, methods andsystems described herein are not related or limited to any particulartype of computer or network system (hardware or software), unlessotherwise indicated. Various types of general purpose or specializedcomputer systems may be used with or perform operations in accordancewith the teachings described herein.

In view of the wide variety of embodiments to which the principles ofthe present invention can be applied, it should be understood that theillustrated embodiments are exemplary only, and should not be taken aslimiting the scope of the present invention. For example, the steps ofthe flow diagrams may be taken in sequences other than those described,and more or fewer elements may be used in the block diagrams. Whilevarious elements of the preferred embodiments have been described asbeing implemented in software, other embodiments in hardware or firmwareimplementations may alternatively be used, and vice-versa.

The claims should not be read as limited to the described order orelements unless stated to that effect. Therefore, all embodiments thatcome within the scope and spirit of the following claims and equivalentsthereto are claimed as the invention.

What is claimed is:
 1. A method for determining the received frequencyof a signal transmitted at a known frequency, comprising: digitizing thereceived signal to produce a digitized signal; squaring the digitizedsignal to produce a squared signal; analyzing the squared signal forspectral components; and scaling the spectral components to identify afrequency of the received signal.
 2. The method of claim 1, wherein theanalysis is by Fourier transform.
 3. The method of claim 1, wherein theanalysis is by Fast Fourier Transform.
 4. The method of claim 1, furthercomprising decimating the squared signals before analysis.
 5. The methodof claim 4, wherein the decimation comprises filtering each squaredsignal through a low-pass filter to produce a plurality of narrow-bandsamples, each narrow-band sample comprising a plurality of sinusoidalcomponents.
 6. The method of claim 1, further comprising concatenatingthe squared signals before analysis to produce a concatenated signal. 7.The method of claim 1, further comprising auto-correlating the squaredsignal before analysis to produce an auto-correlated signal.
 8. Themethod of claim 7, wherein the auto-correlation comprises emphasizingsinusoidal carriers and concentrating noise-energy in a zero time-shiftcomponent.
 9. The method of claim 8, further comprising removing thezero time-shift component from the auto-correlated signal.
 10. Themethod of claim 1, wherein the received signals are Global PositioningSystem (GPS) signals.
 11. A system for determining the frequency of areceived signal, comprising: a means for digitizing the received signalto produce a digitized signal; a means for squaring the digitized signalto produce a squared signal; a means for analyzing the squared signalfor spectral components; and a means for scaling the spectral componentsto identify a frequency of the received signal.
 12. The system of claim11, wherein the analysis is by Fourier transform.
 13. The system ofclaim 11, wherein the analysis is by Fast Fourier Transform.
 14. Thesystem of claim 11, further comprising a means for decimating thesquared signals before analysis.
 15. The system of claim 14, wherein themeans for decimation comprises a means for filtering each squared signalthrough a low-pass filter to produce a plurality of narrow-band samples,each narrow-band sample comprising a plurality of sinusoidal components.16. The system of claim 11, further comprising a means for concatenatingthe squared signals before analysis to produce a concatenated signal.17. The system of claim 11, further comprising a means forauto-correlating the squared signal before analysis to produce anauto-correlated signal.
 18. The system of claim 17, wherein the meansfor auto-correlation comprises a means for emphasizing sinusoidalcarriers and concentrating noise-energy in a zero time-shift component.19. The system of claim 17, further comprising a means for removing thezero time-shift component from the auto-correlated signal.
 20. Thesystem of claim 11, wherein the received signals are Global PositioningSystem (GPS) signals.
 21. The system of claim 11, further comprising awireless device configured to house the digitizing, squaring, analyzing,and scaling means.
 22. The system of claim 11, further comprising anattachment coupled to a wireless device, the attachment configured tohouse the digitizing, squaring, analyzing, and scaling means.
 23. Asystem, comprising: logic embedded on a computer readable medium; andthe logic operable to digitize a received signal to produce a digitizedsignal, square the digitized signal to produce a squared signal, analyzethe squared signal for spectral components, and scale the spectralcomponents to identify a frequency of the received signal.
 24. Thesystem of claim 23, wherein the analysis is by Fourier transform. 25.The system of claim 23, wherein the analysis is by Fast FourierTransform.
 26. The system of claim 23, the logic further operable todecimate the squared signals before analysis.
 27. The system of claim26, wherein the decimation comprises filtering each squared signalthrough a low-pass filter to produce a plurality of narrow-band samples,each narrow-band sample comprising a plurality of sinusoidal components.28. The system of claim 23, the logic further operable to concatenatethe squared signals before analysis to produce a concatenated signal.29. The system of claim 23, the logic further operable to auto-correlatethe squared signal before analysis to produce an auto-correlated signal.30. The system of claim 29, wherein the auto-correlation comprisesemphasizing sinusoidal carriers and concentrating noise-energy in a zerotime-shift component.
 31. The system of claim 30, the logic furtheroperable to remove the zero time-shift component from theauto-correlated signal.
 32. The system of claim 23, wherein the receivedsignals are Global Positioning System (GPS) signals.